In a multicore system, multiple applications (e.g., threads) running on different cores share a main memory. Requests from the applications may interfere at the main memory, resulting in delays in request service and eventually, performance degradation. The queueing latency of requests to main memory increases when multiple applications are executing in a system, as compared to when a single application/thread is executing on a system. When memory requests of an application are delayed for such long times waiting for the main memory, the application could stall until the data corresponding to the request is fetched from main memory, resulting in performance degradation. Applications/threads slow down when the applications/threads are run in a multiple threaded workload along with other threads, as compared to when the thread is run alone.